package com.cykj.admin.mapper;

import com.cykj.admin.vo.DictVO;
import com.cykj.common.entity.DictDataDO;
import com.cykj.common.entity.DictTypeDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @BelongsProject: smart_recruit_backend
 * @BelongsPackage: com.cykj.admin.mapper
 * @Author: 小小卢
 * @CreateTime: 2025-08-28 10:47
 * @Description: TODO
 */
@Mapper
public interface DictMapper {

    /**
     * @Description: 查询所有字典类型
     * @Param: [dictVO]
     * @return: java.util.List<com.cykj.common.entity.DictTypeDO>
     */
    List<DictTypeDO> getAllDictTypeList();
    
    /**
    * @Description: 条件查询字典类型
    * @Param: [dictVO]
    * @return: java.util.List<com.cykj.common.entity.DictTypeDO>
    */
    List<DictTypeDO> getDictTypeList(@Param("dictVO") DictVO dictVO);

    /**
    * @Description: 新增字典类型
    * @Param: [dictVO]
    * @return: java.lang.Integer
    */
    Integer addDictType(@Param("dictVO") DictVO dictVO);

    /**
    * @Description: 修改字典类型
    * @Param: [dictVO]
    * @return: java.lang.Integer
    */
    Integer updateDictType(@Param("dictVO") DictVO dictVO);

    /**
    * @Description: 启/禁用字典类型
    * @Param: [dictVO]
    * @return: java.lang.Integer
    */
    Integer deleteDictType(@Param("dictVO") DictVO dictVO);

    /**
    * @Description: 查询字典数据
    * @Param: [dictVO]
    * @return: java.util.List<com.cykj.common.entity.DictDataDO>
    */
    List<DictDataDO> getDictDataList(@Param("dictVO") DictVO dictVO);

    /**
     * @Description: 新增字典数据
     * @Param: [dictVO]
     * @return: java.lang.Integer
     */
    Integer addDictData(@Param("dictVO") DictVO dictVO);

    /**
     * @Description: 修改字典数据
     * @Param: [dictVO]
     * @return: java.lang.Integer
     */
    Integer updateDictData(@Param("dictVO") DictVO dictVO);

    /**
     * @Description: 启/禁用字典数据
     * @Param: [dictVO]
     * @return: java.lang.Integer
     */
    Integer deleteDictData(@Param("dictVO") DictVO dictVO);

}
